﻿// *----------------------------------------------------------------
// Copyright (C) 2017 通通优品
// 版权所有。
// 
// 类名：WrapResultAttribute.cs
// 功能描述：TongTongMall.WebApi
// 
// Create User：jym 2017/02/09
// 
// Edit User：UserName,EditTime
// Describe：Describe
// ----------------------------------------------------------------*/
using System;

namespace TongTongMall.WebApi.Models
{

    [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface | AttributeTargets.Method)]
    public class WrapResultAttribute : Attribute
    {

        /// <summary>
        /// 设置一个默认实例
        /// </summary>
        public static WrapResultAttribute Default { get { return _default; } }
        private static readonly WrapResultAttribute _default = new WrapResultAttribute();

        /// <summary>
        /// 是否包装成功状态的消息内容
        /// </summary>
        public bool WrapOnSuccess { get; set; }

        /// <summary>
        /// 是否包装失败状态的消息内容
        /// </summary>
        public bool WrapOnError { get; set; }

        /// <summary>
        /// 是否记录审计日志
        /// </summary>
        public bool LogError { get; set; }

        public WrapResultAttribute(bool wrapOnSuccess = true, bool wrapOnError = true)
        {
            WrapOnSuccess = wrapOnSuccess;
            WrapOnError = wrapOnError;
            LogError = true;
        }
    }
}
